Broadband video-on-demand services and broadband internet access are gaining in popularity continuously. Broadband video and data services are currently being delivered by cable TV systems, satellite and asynchronous digital subscriber line services over regular telephone pairs. Digital cable TV data delivery systems come in the broadcast variety and the switched cable variety.
One thing that all these broadband digital data delivery systems have in common is the use of “cherrypicker multiplexers” at the headend to receive digital video data as MPEG transport streams. The cherrypickers function to cull out the MPEG packets of only the desired programs and assemble them as output MPEG transport streams.
Cherrypickers are currently in use in digital broadband cable TV data delivery systems. An example of this type cherrypicker are the headend multiplexers sold commercially by Terayon Communications Systems, Inc. of Santa Clara, Calif. In the broadcast digital cable configuration, a plurality of headend cherrypicker multiplexers receive a plurality of digital MPEG compressed video data transport streams through a plurality of splitters. The inputs of the splitters are MPEG transport data streams from satellite downlinks or video servers. The outputs of the splitters have to be hardwired to the inputs of a plurality of cherrypicker switches that do the job of culling out the desired MPEG packets. This creates a rat's nest of point-to-point connections which have to be manually wired and, when a change occurs, have to be manually re-wired.
An MPEG transport stream is a river of compressed data from which it is impossible to remove only the desired packets unless the transport stream is first decompressed. The cherry picker switches do the culling process by taking the compressed MPEG transport stream and decompressing them almost back to their original resolution. Then the cherrypicker switches cull out the MPEG packets of the desired programs using program identifier codes (hereafter PIDs). Each MPEG transport stream is comprised of a plurality of different video programs or video and audio programs that go together called “multiplexes”. Each video program has a PID, and each multiplex has a PID. The cherrypicker switches use these PIDs to pick out the desired programs from the MPEG transport streams.
These culled packets selected by each cherrypicker are then recompressed, usually to a different bandwidth that matches the available bandwidth of the digital transmission medium on which the data is to be transmitted to the customers. The recompressed MPEG packets culled by each cherrypicker are then re-assembled into an output MPEG transport stream and sent to whatever circuitry is used to transmit it downstream. That might be a modulator that modulates it onto a specific carrier frequency for frequency division multiplexing of multiple logical channels onto the same downstream or it may be a DSL modem.
The rat's nest of point-to-point connections in this prior art cherrypicker design is expensive and inflexible because of the need for hand slinging and re-slinging of wires to set it up or change it. Further, it is not well suited to adaptation to the delivery of internet protocol packets (hereafter IP packets) from a web server or DSL line or T-carrier telephony packets from a T-carrier interface.
In addition, current cherrypickers made by Terayon do not have the ability to receive upstream requests for video-on-demand (hereafter VOD) selections or internet services or the ability to fulfill those requests.
Accordingly, a need has arisen for a cherrypicker that can receive MPEG transport stream and IP packet streams with equal ease and get them to all the cherrypicker switches that need them without a complicated set of point-to-point connections that need to be wired by hand. In addition, because the possible applications for the improved cherrypicker includes DSL systems where there may be thousands of cherrypickers, one for each DSL line, there is a need for the improved cherrypicker design to be inexpensive to build. An additional need has arisen for a cherrypicker which can receive upstream requests for video-on-demand selections and internet services and fulfill those requests by picking out the desired MPEG packets and IP packets from input streams and putting them together into output streams.